struct DodgeTheMissileState
{
    int playerX;
    int playerY;

    vector<Vec2i> missiles;
    vector<Vec2i> candies;

    int score;

    int missilesDodged;
    int candyEaten;
    int framesSinceReset;
};

class GameDodgeTheMissile : public Game
{
public:
    void Init();
    string Name() { return "dodgeTheMissile"; }
    void NewGame();
    void Step(ControllerState &controller);
    ControllerState SimpleAI();

private:
    void MakeFrameSprites();
    void Reset();

    DodgeTheMissileState _state;

    // Sprite IDs
    int _spritePlayer;
    int _spriteMissile;
    int _spriteCandy;
};